// 定义一个对象来管理当前激活的表单
let activeForm = null;

// 根据用户类型显示相应的登录表单
function showLoginForm(userType) {
    const formId = 'login-form-' + userType;
    const usernameId = userType + '_username';
    const passwordId = userType + '_password';

    // 隐藏所有表单
    document.getElementById('login-form-user').style.display = 'none';
    document.getElementById('login-form-admin').style.display = 'none';
    document.getElementById('login-form-leader').style.display = 'none';

    // 显示当前选择的表单
    document.getElementById(formId).style.display = 'grid';

    // 更新全局变量activeForm为当前激活的表单
    activeForm = document.getElementById(formId);

    // 绑定表单提交事件
    if (activeForm) {
        const submitHandler = handleFormSubmit(usernameId, passwordId, userType);
        activeForm.addEventListener('submit', submitHandler);
    }
}

// 处理表单提交的函数
function handleFormSubmit(usernameId, passwordId, userType) {
    return function(e) {
        e.preventDefault(); // 阻止表单的默认提交行为
        const username = document.getElementById(usernameId).value;
        const password = document.getElementById(passwordId).value;

        // 构建请求体
        const requestBody = {
            account: username,
            password: password
        };

        // 发送POST请求到后端
        var url='http://2c8ciz.natappfree.cc';
        fetch(url+'/user/login', {
            method: 'POST',
            headers: {
                'Content-Type': 'application/json'
            },
            body: JSON.stringify(requestBody)
        })
        .then(response => response.json())
        .then(response => {
            console.log(response);
            if (response==0) {
                // 登录成功
                
                localStorage.setItem('userType', userType);
                window.location.href = '../html/index.html';
            } else {
                // 登录失败，显示错误信息
                alert('登录失败: ' + response.message);
            }
        })
        .catch(error => {
            // 网络或其他错误
            console.error('请求失败:', error);
            alert('请求失败，请稍后重试');
        });
    };
}

// 页面加载完成后，默认显示用户登录表单
document.addEventListener("DOMContentLoaded", function () {
    showLoginForm('user');
});

// 为单选按钮添加事件监听器，以便在点击时显示相应的表单
document.getElementById('login-admin').addEventListener('click', function() {
    showLoginForm('admin');
});
document.getElementById('login-user').addEventListener('click', function() {
    showLoginForm('user');
});
document.getElementById('login-leader').addEventListener('click', function() {
    showLoginForm('leader');
});